return;
windows = shell_app_get_windows (app);
- if (window == NULL && windows)
- window = windows->data;
+ if (window == NULL)
+ {
+ for (GSList *l = windows; l; l = l->next)
+ {
+ MetaWindow *current_window = l->data;
+
+ if (!meta_window_is_override_redirect (current_window))
+ {
+ window = current_window;
+ break;
+ }
+ }
+ }
if (!g_slist_find (windows, window))
return;
{
MetaWindow *other_window = iter->data;
- if (other_window != window && meta_window_get_workspace (other_window) == workspace)
+ if (other_window != window &&
+ !meta_window_is_override_redirect (other_window) &&
+ meta_window_get_workspace (other_window) == workspace)
meta_window_raise (other_window);
}
g_slist_free (windows_reversed);